今天也是要讓大家來練習,那我們就開始今天的進度吧!
畢氏三元數,是指三角形中,兩股ab、斜邊c,符合a^2+b^2=c^2的三角形,也就是直角三角形,並且為整數,的三個數字(a,b,c)。例如:(3,4,5)就是畢氏三元數。
問題:找出一組畢氏三元數,其中 a+b+c = 1000,求a,b,c三數的乘積。
for a in range(500):
for b in range(500):
for c in range(500):
if (a**2+b**2==c**2) and a+b+c==1000:
print(a*b*c)
首先我是用三個for迴圈,分別是abc,那之所以我會把迴圈的次數設在500就是因為我們可以知道周長1000的三角形,邊長是不可能大於500的,那再來就是嘗試每種abc的組合有沒有符合條件,就是兩邊平方等於第三邊平方、周長等於1000,那再來找到之後,就把abc乘起來,最後打印。
這一個是我之前都沒有講到的,那我整理在下面給大家參考。
int() 強制轉換為整數。
float() 強制轉換為浮點數。
str() 強制轉換為字串